export default {
  app: {
    name: 'WorkBench',
    menuName: 'Monitor',
    refresh: 'refresh',
    query: 'Query',
    reset: 'Reset',
    autoRefresh: 'refresh',
    custom: 'Custom',
    startDate: 'Start Date',
    endDate: 'End Date',
    to: 'To',
    running: 'running',
    disconnect: 'disconnect',
    unknown: 'unknown',
    delete: 'delete',
    confirmDel: 'Confirm to delete',
    cancel: 'Cancel',
    confirm: 'confirm',
    edit: 'edit',
    operate: 'operate',
    startTime: 'Start time',
    endTime: 'End time',
    lastOneHour: 'Last 1 hour',
    lastThreeHour: 'Last 3 hour',
    lastSixHour: 'Last 6 hour',
    cluterTitle: 'Cluster/Instance:',
    saveSuccess: 'Save succeed！',
  },
  diagnosis: {
    sqlDiagnosis: 'SQL Diagnosis',
    histroyDiagnosis: 'History Diagnosis',
    newSQLTask: 'Add SQL Diagnosis Task',
    globalThresholdSetting: 'Global Threshold Configuration',
    globalThresholdLabel: 'Global Threshold',
    globalThreshold: 'Global Threshold',
  },
  sqlDiagnosisPoints: {
    referSQL: 'Optimized Reference SQL',
    beforePlan: 'Current Execution Plan',
    afterPlan: 'Optimized Execution Plan',
    noPlan: 'Failed to retrieve execution plan',
  },
  instanceIndex: {
    memory: 'Memory',
    networkInOut: 'Network(In/Out)',
    activeSessionQty: 'Number of Active Sessions',
    activeSessionQtyTips: 'You can select an interval in the graph to drill down for analysis',
    threadPoolUsed: 'Thread Pool Usage',
    nowTOPSQL: 'Real-time TOPSQL',
    dbName: 'DB Name',
    userName: 'User Name',
    appName: 'App Name',
    startTime: 'Start Time',
    costTime: 'Cost Time(s)',
    sessionId: 'Session ID',
    detail: 'detail',
  },
  historyDiagnosis: {
    selectTime: 'Please select a diagnosis time:',
    nowTime: 'Now',
    option: 'Options:',
    thresholdsThisTime: 'This diagnostic threshold configuration:',
    kind: 'Category',
    thresholdsName: 'Threshold Name',
    thresholdsConfig: 'Threshold Configuration',
    thresholdsRemark: 'Threshold Description',
    diagnosis: 'Diagnosis',
    diagnosing: 'Diagnosing...',
    pleaseSelectInstance: 'Please select an instance',
    pleaseSelectStartAndEndTime: 'Please enter a start and end time',
    pleaseSelectStartTime: 'Please enter a start time',
    pleaseSelectThreshold: 'Please enter a threshold',
    result: 'Diagnosis Result',
    explanation: 'Diagnosis Explanation',
    notAnalyze:
      'No diagnostic action was taken for this diagnostic point because the diagnostic criteria were not met.',
    taskInfo: {
      result: 'Diagnostic Result',
      diagnosisRange: 'Diagnostic Interval:',
      taskState: 'Task Status:',
      cost: 'Diagnosis Time-Consuming:',
      createTime: 'Creation Time:',
      option: 'Options:',
      thresholdsRemark: 'Diagnosis Thresholds',
      taskName: 'Task Name:',
      dbName: 'Database Name:',
      sqlId: 'Top SQL ID:',
      taskType: 'Task Type:',
      taskStartTime: 'Start Time:',
      taskEndTime: 'End Time:',
      schemaName: 'schema:'
    },
    topCPUTimeSQL: {
      normalizedSQLID: 'Normalized SQL ID',
      calls: 'Number of Calls',
      cpuTime: 'CPU Time (s)',
      dbTime: 'Database time (s)',
      lastUpdated: 'Last updated time',
    },
    waitEvent: {
      eventName: 'Wait Event Name',
      sampleNum: 'Number of samples within time interval',
      description: 'Description',
      troubleshooting: 'Troubleshooting Suggestions',
    },
    currentCpuUsage: {
      for: 'Current CPU usage:',
    },
    lock: {
      logTime: 'Log Time',
      processId: 'Process ID',
      transactionId: 'Transaction ID',
      log: 'Log Content',
    },
    businessConnCount: {
      title: 'The relationship between CPU second-level jitter and the number of business connections',
      nowStartTime: 'Jitter start time',
      nowEndTime: 'Jitter end time',
      nowSessionCount: 'The average number of connections per second in the jitter interval',
      beforeSessionCount: 'Average connections per second before jitter',
    },
  },
  dashboard: {
    diagnosisAddTaskSuccess: 'Diagnostic task created successfully',
    name: 'Dashboard',
    addDsBtn: 'Add Instance',
    searchPlaceholder: 'filter by instance name or IP',
    table: [
      'Instance Name',
      'Server Status',
      'Database Status',
      'Connection Info',
      'Database Version',
      'CPU Usage Of Server',
      'Memory Usage Of Server',
      'Number Of Database Avtivity Session',
      'Number Of Database Block Session',
    ],
    instance: 'Instance Detail',
    load: 'Performance Load',
    session: 'Session Management',
    slow: 'Slow SQL',
    space: 'Spatial Analysis',
    day: 'day',
    hour: 'hour',
    range: 'Range',
    last1H: 'Last Hour',
    last12H: 'Last 12 Hours',
    last1D: 'Last 1 Day',
    last2D: 'Last 2 Days',
    last7D: 'Last 7 Days',
    cpuUsage: 'CPU Usage',
    cpuUseSituation: 'CPU Use Situation',
    networkTransmissionRate: 'Network Transmission Rate',
    load5m: '5m load',
    memoryUsage: 'Memory Usage',
    diskReadRate: 'Disk Read Rate',
    diskWriteRate: 'Disk Write Rate',
    uploadRate: 'Upload Rate',
    downloadRate: 'Download Rate',
    serverInfo: {
      title: 'Server Basic Information',
      ip: 'IP',
      host: 'Host Name',
      systemVersion: 'System Version',
      runningTime: 'Running time',
      memory: 'Memory',
      coreNumber: 'Number of CPU Cores',
      cpuProcessor: 'CPU Processor',
      totalProcesses: 'Total Processes',
    },
    timeConsumption: 'Time Consumption',
    runningInAnalysis: 'Running In Analysis',
    runningInAnalysisTip:
      'You can select an interval in the figure to drill down and analyze the SQL execution in the corresponding time period',
    uncheckRegion: 'Uncheck Region',
    waitEvent: 'Wait Event',
    serverResources: 'Server Resources',
    loadAndCpu: 'Overall total load and overall average CPU utilization',
    memoryAndAverageMemory: 'Overall total memory and overall average memory usage',
    diskAndAverageDisk: 'Overall total disk and overall average disk utilization',
    diskReadAndWriteRate: 'Disk read/write rate (IOPS)',
    diskReadAndWritCapacity: 'Disk read/write capacity per second',
    networkBandwidthUsage: 'Network bandwidth usage per second',
    networkSocketConnection: 'Network Socket Connection Information',
    databaseLoad: 'Database Load',
    tps: 'TPS',
    qps: 'QPS',
    connectionNum: 'Number of connections',
    slowSqlMoreThan3Seconds: 'Slow SQL (>',
    longTransactionNumGreaterThan30Seconds: 'Number of long transactions (greater than 30 seconds)',
    sqlResponseTime: 'SQL response time',
    transactionLockInfo: 'Transaction lock information statistics',
    cacheHitRate: 'Cache Hit Rate',
    ioBlockNumberTrend: 'Database file IO block number trend',
    ScrubDirtyPageInfo: 'Scrub dirty page information',
    currentRate: 'Current Rate',
    minimumRate: 'Minimum Rate',
    averageRate: 'Average Rate',
    maxRate: 'Max Rate',
    currentCapacity: 'Current Capacity',
    minimumCapacity: 'Minimum Capacity',
    averageCapacity: 'Average Capacity',
    maxCapacity: 'Max Capacity',
    totalLoad: 'Total Load',
    allProtocolSocketsUsed: 'Total number of all protocol sockets used',
    serverDetail: 'Server Detail',
    sessionStatistics: 'Session Statistics',
    sessionList: 'Session List',
    userStatistics: 'User Statistics',
    accessSourceStatistics: 'Access Source Statistics',
    databaseStatistics: 'Database Statistics',
    rangeTimeTip: 'The box selection area is the SQL execution time range',
    capacity: 'capacity',
    rate: 'rate',
  },
  metric: {
    totalCoreNum: 'Total number of cores',
    total5mLoad: 'total 5m Load',
    totalAverageUtilization: 'Total Average Utilization',
    diskIOUsage: 'Disk IO usage',
    systemUsage: 'System Usage',
    userUsage: 'User Usage',
    totalUsage: 'total Usage',
    totalMemory: 'total Memory',
    usedMemory: 'Used Memory',
    totalDisks: 'Total Disks',
    totalNumber: 'Total Usage',
    read: 'Read',
    write: 'Write',
    upload: 'Upload',
    download: 'Download',
    transactionRollbackNum: 'Number of transaction rollback',
    transactionCommitments: 'Transaction Commitments',
    transactionAndRollbackTotal: 'Total number of transaction committed and rolled back',
    queryTransactions: 'Number of query transactions',
    currentIdleConnections: 'Current idle connections',
    currentActiveConnections: 'Current active connections',
    currentConnections: 'Current connections',
    totalConnections: 'Total connections',
    slowSqlNum: 'Slow SQL Number',
    longTransactions: 'Number of long transactions',
    sqlResponseTime80: '80% SQL response time',
    sqlResponseTime95: '95% SQL response time',
    queryCacheHitRate: 'Query cache hit rate',
    databaseCacheHitRate: 'Database cache hit rate',
    readPhysicalFileBlockNum: 'Number of read physical file blocks',
    writePhysicalFileBlockNum: 'Number of physical file blocks written',
    lastBatchDirtyPageNum: 'Number of dirty pages in the last batch',
    currentRemainingDirtyPages: 'Current estimated remaining dirty pages',
  },
  session: {
    sessionDetail: 'Session Detail',
  },
  sql: {
    dbName: 'Database Name',
    schemaName: 'Schema Name',
    userName: 'User Name',
    applicationName: 'Application Name',
    startTime: 'Start Time',
    finishTime: 'Finish Time',
    dbTime: 'db_time(ms)',
    cpuTime: 'cpu_time(ms)',
    excutionTime: 'Excution Time(ms)',
    sqlDetail: 'SQL Detail',
    analysis: 'Analysis',
    baseInfo: 'Base Info',
    sqlText: 'Sql Text',
    statisticalInformation: 'Statistical Information',
    implementationPlan: 'Implementation plan',
    systemSource: 'System Source',
    objectInformation: 'Object information',
    indexSuggestions: 'Index suggestions',
    objectStructure: 'Object Structure',
    indexInformation: 'Index Information',
    reportDetail: 'Report Detail',
    sqlDiagnose: 'sql sqlDiagnose',
    baseInfoTitle: 'Base Infomation',
    executionStatisticTitle: 'Execution Statistic',
    consumptionStatisticTitle: 'Consumption Statistic',
    consumingBreakdownTitle: 'Consuming Breakdown',
    waitTimeLabel: 'waiting time',
    cpuTimeLabel: 'cpu time',
    dbTimeLabel: 'db time',
    baseInfoOption: {
      debug_query_id: 'SQL ID',
      db_name: 'Database Name',
      schema_name: 'Schema Name',
      start_time: 'Start Time',
      finish_time: 'Finish Time',
      user_name: 'User Name',
      application_name: 'Application Name',
      socket: 'Client Connection Information',
    },
    executeOption: {
      n_returned_rows: 'Number of returned rows',
      n_soft_parse: 'Soft resolution times',
      n_tuples_fetched: 'Number of random scan lines',
      n_hard_parse: 'Hard resolution times',
      n_tuples_returned: 'Number of sequential scan lines',
      net_send_info_size: 'Network throughput of physical connection sending messages',
      n_tuples_inserted: 'Number of inserted rows',
      net_recv_info_size: 'Network throughput of physical connection receiving messages',
      n_tuples_updated: 'Update rows',
      net_stream_send_info_size: 'Network throughput of messages sent by logical connection',
      n_tuples_deleted: 'Number of deleted rows',
      net_stream_recv_info_size: 'Network throughput of logical connection receiving messages',
      blocks_hit_rate: 'cache hit rate',
      net_send_info_calls: 'Number of network calls for physical connection to send messages',
      lock_count: 'Locking times',
      net_recv_info_calls: 'Number of network calls for physical connection to receive messages',
      lock_wait_count: 'Number of lock waiting times',
      net_stream_send_info_calls: 'Number of network calls for sending messages via logical connection',
      lock_max_count: 'Maximum number of locks',
      net_stream_recv_info_calls: 'Number of logical connection receiving message network calls',
    },
    consumingOption: {
      execution_time: 'Execution time in actuator',
      net_send_info_time: 'Time consuming for physical connection to send messages',
      parse_time: 'SQL parsing time',
      net_recv_info_time: 'Time consuming for physical connection to receive messages',
      plan_time: 'SQL generation plan time',
      net_stream_send_info_time: 'Network time consumption of sending messages through logical connection',
      rewrite_time: 'SQL rewrite time',
      net_stream_recv_info_time: 'Time consumption of logical connection receiving message network',
      pl_execution_time: 'Execution time on plpgsql',
      lock_time: 'Time consuming for locking',
      pl_compilation_time: 'Compilation time on plpgsql',
      lock_wait_time: 'Time consuming for lock waiting',
      data_io_time: 'Time spent on IO',
    },
    mostWidth: 'most width',
    mostRows: 'most rows',
    mostCost: 'most cost',
    mostWidthPosi: 'Locate to the maximum width',
    mostRowsPosi: 'Locate to the maximum rows',
    mostCostPosi: 'Locate to the maximum single step operation cost',
    objBaseInfo: {
      schemaname: 'schema name',
      relname: 'object name',
      objectType: 'object type',
      objectSize: 'object size',
      nLiveTup: 'Number of live tuples',
      nDeadTup: 'Number of dead tuples',
      deadTupRatio: 'Dead tuple ratio',
      lastVacuum: 'Last vacuum time',
      lastVacuumAutovacuum: 'Last autovacuum time',
      lastAnalyze: 'Last analyze time',
      lastAutoanalyze: 'Last autoanalyze time',
    },
    objStructure: {
      attnum: 'Field order',
      attname: 'Field Name',
      typname: 'data type',
      attlen: 'Type Length',
      attnotnull: 'Allow to be empty',
      description: 'Field Remarks',
    },
    indexInfo: {
      relname: 'Index Name',
      indisprimary: 'primary key',
      indisunique: 'unique index',
      indisclustered: 'Cluster index',
      indisvalid: 'Available for query',
      indisreplident: 'Usage',
      def: 'Index definition',
    },
    noOjcInfoTip: 'No object information',
    placeholderTip:
      'The SQL statement has a placeholder, unable to obtain index suggestions. It is recommended that the tracks in the database_ stmt_ The parameter parameter is set to on to obtain new SQL without placeholder',
    objStructureOther: {
      commonTable: 'common Table',
      indexes: 'indexes',
      sequence: 'sequence',
      toastTable: 'TOAST table',
      view: 'view',
      materializedView: 'materialized view',
      combinationType: 'combination type',
      externalTable: 'external table',
      partitionTable: 'partition table',
      partitionIndex: 'partition index',
      none: 'none',
      isUsed: 'used',
    },
    yes: 'yes',
    no: 'no',
    isHasData: 'No Data',
    failGetExecutionPlan: 'Failed to get the execution plan',
    failResolveExecutionPlan: 'The execution plan could not be resolved',
    blockSession: {
      waitLockMode: 'Wait Lock Mode',
      tableName: 'Table Name',
      userName: 'username',
      clientIP: 'Client IP',
      applicationName: 'App Name',
      waitStatus: 'Wait Stauts',
      sessionId: 'Session ID',
      blockSessionID: 'Block Session ID',
      startTime: 'Start Time',
      endTime: 'End Time',
    },
  },
  datasource: {
    paramAnalysis: 'Parameter diagnosis',
    paramName: 'parameter name',
    currentValue: 'current value',
    paramDescription: 'parameter description',
    editSuggestion: 'Edit Suggestion',
    suggestValue: 'suggestion value',
    suggestReason: 'suggestion reason',
    pleaseSelectInstance: 'Please select cluster and instance',
    confirmToDeleteTask: 'Confirm to delete this task?',
    showNum: 'Show numbers',
    reportResultSelect: ['Suggestions', 'All diagnosis points'],
    diagnosis: 'Diagnosis',
    notMeetingConditions: 'Not meeting the recommended conditions',
    sqlID: 'SQL ID',
    slowSQL: 'Slow SQL Analysis',
    sqlTrackTask: 'Slow SQL Diagnostic',
    sqlTrackTaskStartTimeSelect: 'Run Start Time',
    slowSQLSelectNode: 'Please select cluster and instance,then press the query button',
    name: 'Datasource',
    slow: 'Slow Log Analysis',
    os: 'OS',
    database: 'Database',
    schema: 'Schema',
    statistics: 'Slow SQL Statistics',
    detail: 'Slow SQL Detail',
    ebpf: 'EBPF',
    track: 'SQL track',
    addTrBtn: 'New',
    searchPlaceholder: 'Task name or task type or SQL',
    addTaTitle: 'Add track task',
    trackDetail: 'Task detail',
    goBack: 'Go back',
    detailTitle: 'Track detail',
    diagnosticResult: 'Diagnostic results',
    taskInfo: 'Task info',
    taskName: 'Task name',
    reportDetail: 'Report detail',
    noResult: 'No result',
    analysisReport: 'Analysis report',
    example: 'Living example',
    carryOut: 'Carry out',
    flameDiagram: 'Flame diagram',
    logType: 'Log type',
    selectLogType: 'Please select the log type',
    selectDatabaseType: 'Please select the database type',
    selectSchema: 'Please select the database schema',
    selectTaskName: 'Please write the task name',
    selectSql: 'Please write the sql',
    executeTime: 'Execute time',
    logContent: 'Log content',
    cluterTitle: 'Cluster/Instance',
    createTime: 'Create time',
    option: 'Option',
    ebpfOnLable: 'OnCPU analysis',
    ebpfOffLable: 'OffCPU analysis',
    createTask: 'Create a task',
    cancel: 'Cancel',
    trackListTip:
      'Click the SQL diagnosis button in the upper left corner to trigger the explain analyze to obtain the new execution plan of the SQL and conduct the SQL tracking',
    InstanceConfig: 'Instance config',
    configPlaceholder: 'Cluster ID or Instance ID or property value',
    editConfigTitle: 'Edit Instance Config',
    slowChartTitle: 'Slow log trend chart',
    taskInfoRemarkKey: 'Remarks',
    slowSqlChartTip: 'No time conditions set, default display of data within 7 days',
    slowSqlChartMetricTip: 'Please confirm if the "Database Slow SQL" indicator for collection configuration in the instance monitoring plugin is enabled',
    slowSqlChartAgentTip: 'This instance does not have an indicator collection agent installed. Please install the instance monitoring plugin first and install the collection agent to collect slow SQL indicators; Ensure that if the "Database Slow SQL" indicator for collection configuration in the instance monitoring plugin is enabled',
    slowSqlChartParamTip: 'The database does not have slow SQL tracking related parameters enabled. Please set the following parameters first: enable_stm_track: on indicates enabling Full/Slow SQL capture; Track_stmtstat_level: xxx/L0 Set the second parameter to L0 or higher level',
    slowLogTable: [
      'Start time',
      'Finish time',
      'Sql text',
      'Db name',
      'Ip address',
      'User',
      'Db time(ms)',
      'Cpu time(ms)',
      'Data io time(ms)',
      'Parse time(ms)',
      'Pl execution time(ms)',
      'Lock wait time(ms)',
      'Tuples returned',
      'Returned rows',
      'unique SQL ID'
    ],
    slowStaticTable: [
      'unique SQL ID',
      'SQL',
      'Number of executions',
      'Total execution time (s)',
      'Average execution time (s)',
      'Total number of scanned lines',
      'Average number of scanned rows',
      'Total number of randomly scanned rows',
      'Average number of randomly scanned rows',
      'Total number of sequentially scanned rows',
      'Average number of rows scanned in order',
      'Average number of returned rows',
      'Average lock duration (s)',
      'First appearance time',
      'Last occurrence time'
    ],
    ebpfFormRules: ['Please select the instance', 'Please select the database'],
    trackFormRules: [
      'Please write the task of name',
      'Please select the database',
      'Please write the sql',
      'Please select the Cluster/Instance',
      'Please select the schema'
    ],
    trackTable: [
      'Track name',
      'Task type',
      'State',
      'Start time',
      'End time',
      'Cost time(s)',
      'Create time',
      'Cluster ID',
      'Instance ID',
      'Operate',
      'Db name',
      'schema'
    ],
    configTable: ['Time', 'Type', 'Grade', 'log', 'Cluster ID', 'Instance ID'],
    pleaseInstallInstance: 'Please install the instance monitoring plugin before using this feature to access SQL details'
  },
  spatial: {
    diskUsage: 'Disk Usage',
    tablespaceUsage: 'Tablespace Usage Trends',
    diskInfo: 'Disk Information',
    diskInfoTable: ['Equipment Name', 'File System', 'Partition', 'Total Space', 'Available Space', 'Usage'],
    tablespaceInfo: 'Tablespace Information',
    tablespaceInfoTable: ['Node Name', 'Tablespace Name', 'Maximum Space Limit', 'Used Space', 'Tablespace Path'],
    vacuumDeadNum: 'Objects recommended for vacuum - sort according to the number of dead tuples',
    vacuumDeadNumTable: [
      'Database Name',
      'Schema Name',
      'Table Name',
      'Table Size',
      'Number Of Active Tuples',
      'Number Of Death Tuples',
      'Death Tuple Ratio',
    ],
    vacuumDeadPro: 'Objects recommended for vacuum - sort according to the proportion of dead tuples',
    vacuumDeadProTable: [
      'Database Name',
      'Schema Name',
      'Table Name',
      'Table Size',
      'Number Of Active Tuples',
      'Number Of Death Tuples',
      'Death Tuple Ratio',
    ],
  },
  report: {
    rowsDiffTitle: 'Difference between estimated rows and actual rows',
    rowsDiffStep: 'Operation steps',
    estimateRows: 'Estimated rows',
    actualRows: 'Actual rows',
    analyzeExcuationPlan: 'Explain analyze execution plan',
    originalExecutionPlan: 'Original execution plan',
    baseInfoTitle: 'essential information',
    baseInfoObj: {
      schemaname: 'Mode Name',
      deadTupRatio: 'Dead tuple ratio',
      objectType: 'object type',
      lastVacuum: 'Last vacuum time',
      objectSize: 'Object Size',
      lastVacuumAutovacuum: 'Last autovacuum time',
      nLiveTup: 'Number of live tuples',
      lastAnalyze: 'Last analyze time',
      nDeadTup: 'Number of dead tuples',
      lastAutoanalyze: 'Last autoanalyze time',
    },
    partitionTitle: 'Partition information',
    partitionObj: {
      partStrategy: 'Partition policy',
      partKey: 'Partition key',
      interval: 'Interval value',
      rangePartition: 'Range partition',
      numericalPartition: 'Numerical partition',
      intervalPartition: 'Interval partition',
      listPartition: 'List partition',
      hashPartition: 'Hash partition',
      invalidPartition: 'Invalid partition',
    },
    workMemTitle: 'External sorting consumes memory and work_ Mem difference',
    workMemObj: {
      consumesMemory: 'External sorting consumes memory',
    },
    none: 'none',
    table: 'table',
    noIndexSuggestions: 'No index suggestions',
    ImproveQueryEfficiency: 'improve query efficiency',
    size: 'size',
    maximumConsumption: 'Maximum consumption of full table scanning',
    indexTemplate: 'It is recommended to create an index for column %c of table %t',
    multiColumnIndexTemplate: 'It is recommended to create a composite index for column %c of table %t',
    suggestion: {
      ObjectInfoCheck: {
        id: 'ObjectInfoCheck',
        name: 'Analysis ideas',
        title: 'Object statistics check',
        advise:
          'There is a large gap between the estimated rows and the actual rows in the execution plan calculation. It is recommended to execute analyze to update the statistics of related objects to generate the optimal execution plan and improve the execution efficiency',
        analysisIdea: `Analyze the objects with large gap between actual rows and estimated rows in the execution plan generated by explain analyze. Please check the report details of the analysis results. It is recommended to update the statistics for the objects with gaps between the actual rows and the estimated rows in the analysis results, so as to generate the optimal execution plan and improve the execution efficiency. <br />
                Object statistics can be updated with the analyze tablename command. `,
      },
      ObjectRecommendedToUpdateStatistics: {
        id: 'ObjectRecommendedToUpdateStatistics',
        name: 'Diagnostic results',
        title: 'It is recommended to execute analyze to update object statistics',
        advise:
          'There is a large gap between the estimated rows and the actual rows in the execution plan calculation. It is recommended to execute analyze to update the statistics of related objects to generate the optimal execution plan and improve the execution efficiency',
      },
      ExecPlan: {
        id: 'ExecPlan',
        name: 'Analysis ideas',
        title: 'Execution plan',
        advise:
          'There is a large gap between the estimated rows and the actual rows in the execution plan calculation. It is recommended to execute analyze to update the statistics of related objects to generate the optimal execution plan and improve the execution efficiency',
        analysisIdea: `Analyze the original SQL execution plan, locate the calculation step that consumes the most in the execution plan, and generate the corresponding analysis results according to the analysis path, which includes <br />
                    1、Index suggestion analysis <br />
                    2、Object structure analysis <br />
                    3、Object data analysis <br />
                    4、Memory consumption analysis <br />
                    It is recommended to optimize and process SQL or related objects according to the generated analysis results to improve SQL execution efficiency.`,
      },
      PlanRecommendedToCreateIndex: {
        id: 'PlanRecommendedToCreateIndex',
        name: 'Diagnostic results',
        title: '',
        advise: '',
      },

      PlanChangedToPartitionTable: {
        id: 'PlanChangedToPartitionTable',
        name: 'Diagnostic results',
        title: 'It is recommended to change TABLE to partition table',
        advise:
          'The number of live tuples in the TABLE exceeds 20 million. It is recommended to change it to a partitioned table to query a single partition as far as possible to improve the query efficiency',
      },
      PlanRecommendedToQueryBasedOnPartition: {
        id: 'PlanRecommendedToQueryBasedOnPartition',
        name: 'Diagnostic results',
        title: 'It is recommended to query based on partitions to avoid scanning all partitions',
        advise:
          'TABLE is a partitioned table, but it is not queried based on partitions. It is recommended to add partition column conditions or query based on partition keys to query partitioned tables to avoid scanning all partitions',
      },
      PlanRecommendedToDoVacuumCleaning: {
        id: 'PlanRecommendedToDoVacuumCleaning',
        name: 'Diagnostic results',
        title: 'It is recommended to clean the TABLE vacuum',
        advise:
          'The number of deleted or updated records in the TABLE exceeds the total number of table rows * 0.2+50. It is recommended to clean the table vacuum to avoid consuming a lot of IO and affecting query efficiency',
      },
      PlanRecommendedToOptimizeStatementsOrAddWorkMemSize: {
        id: 'PlanRecommendedToOptimizeStatementsOrAddWorkMemSize',
        name: 'Diagnostic results',
        title: 'It is recommended to optimize statements or add work_ Mem size',
        advise:
          'Memory required for sorting exceeds work_ The size of the mem parameter. It is recommended to optimize the statement or add work_ The size of mem to avoid using disk space and affect query efficiency',
      },
    },
    singleStepOperationCost: '单步运算cost',
    totalCost: '总cost',
  },
  install: {
    uninstall: 'uninstall',
    uninstallProxy: 'uninstall server',
    uninstallAgent: 'uninstall proxy',
    uninstallQuick: 'uninstall quick',
    install: 'install',
    installAgent: 'install proxy',
    installProxy: 'install server',
    installedAgent: 'installed proxy',
    installedProxy: 'installed server',
    machine: 'machine',
    installUser: 'install user',
    rootPWD: 'root password',
    installPath: 'Installation path',
    proxyPort: 'proxy port',
    collectInstance: 'collect instance',
    collectProxy: 'collect proxy',
    callbackPath: 'callback path',
    proxyRules: ['choose the machine please', 'input the password of root please', 'input the proxy port please', 'input the proxy callback path', 'input the proxy install path'],
    collectorRules: ['choose the instance please', 'input the password of root please'],
    start: 'start',
    stop: 'stop',
    restart: 'restart',
    startSuccess: 'Start success',
    startFail: 'Start failure',
    stopSuccess: 'Stop success',
    stopFail: 'Stop failure',
    status: {
      normal: 'Running',
      unknown: 'Unknown',
      starting: 'Starting',
      stopping: 'Stopping',
      manualStop: 'Manually Stopped',
      errorThreadNotExists: 'Exception: Thread does not exist',
      errorProgramUnhealthy: 'Exception: Program is unhealthy',
    },
  },
  histroyDiagnosis: {
    menuName: 'Historical Data Diagnostics',
  },
  instanceMonitor: {
    instanceMonitor: 'Instance Monitor',
    clusterTitle: 'Cluster/Instances:',
    index: 'Home',
    resourceMonitor: 'Resource Monitor',
    thisInstance: ',Current Instance',
    asp: {
      sampleActiveSessionCount: 'Sample Active Session Count',
      aspAnalysis: 'ASP Analysis',
      analysisMetrics: 'Analysis Metrics',
      filterConditions: 'Filter Conditions',
      clickLegendToAddFilter: 'Click Legend to Add Filter',
      sampleCount: 'Sample Count',
      activeSessionCount: 'Active Session Count',
    },
    nodeInfo: {
      instanceInfo: 'Instance information',
      databaseVersion: 'Database version:',
      databaseStartTime: 'Database start time:',
      databaseDataDirectory: 'Database data directory:',
      databaseLogDirectory: 'Database log directory:',
      enableArchiving: 'Enable archiving:',
      yes: 'Yes',
      no: 'No',
      operatingSystemVersion: 'Operating system version:',
      serverCPUManufacturer: 'Server CPU manufacturer:',
      serverCPUModel: 'Server CPU model:',
      serverCPUCoreCount: 'Server CPU core count:',
      cores: 'cores',
      totalMemorySize: 'Total memory size:',
    },
    instance: {
      connectionQty: 'Connections',
      slowSQL3s: 'Number Of Slow Sqls(>',
      rollbackQty: 'Transaction Rollback Count',
      commitQty: 'Transaction Commits',
      transTotalQty: 'Total Number Of Transaction Commits And Rollbacks',
      queryQty: 'Query Transaction Count',
      idleConnectionQty: 'Current Number Of Idle Connections',
      activeConnectionQty: 'Current Active Connections',
      connectionQtyNow: 'Current Connections',
      maxConnectionQty: 'Total Connections',
      slowSQLQty: 'Slow SQL Number',
      dbSlowSQLQty: ' Database Slow SQL Number',
      idleConnectionQtyContent: 'Current number of idle connections in the database instance',
      activeConnectionQtyContent: 'Current number of active connections in the database instance',
      connectionQtyNowContent: 'Current number of connections in the database instance',
      maxConnectionQtyContent: 'Maximum number of connections in the database instance',
      slowSQLQtyContent: 'Number of slow SQL queries exceeding 3 seconds',
      rollbackQtyContent: 'Number of transaction rollbacks per second in the database',
      commitQtyContent: 'Number of transaction commits per second in the database',
      transTotalQtyContent: 'Total number of transaction commits and rollbacks per second in the database',
      queryQtyContent: 'Amount of SQL data queried per second in the database workload',
    },
    noneRole: 'none',
    noneRoleName: 'None role',
  }
}
